#pragma once

#include "vecmath.h"


class Polygon {


public:
  Polygon (const f64 *data, u64 size) noexcept;

  s64v4 contains (f64v4 x, f64v4 y) noexcept;


private:
  std::vector<f64> px;
  std::vector<f64> py;
  std::vector<f64> pdp;
  std::vector<f64> tdp;
  std::vector<f64> tf;
  std::vector<s64> tc;

  f64 x;
  f64 y;
  u64 n;
};
